package com.wpen.unit.infra.mybatis.job.po;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.sql.Timestamp;
import java.util.Date;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

/**
 * AgentRegistryPo.
 * 
 * @author Wang Peng(Auto Generator)
 * @date 2023-03-19
 * @version V5.0
 */
@Setter
@Getter
@ToString
@TableName("UNIT_AGENT_REGISTRY")
public class AgentRegistryPo implements Cloneable, Serializable {
    private static final long serialVersionUID = -161123581321345589L;
    /* 主键 [19,0] Not NULL */
    @TableId
    private Long id;
    /* 代理实例主机名 [128,0] */
    private String agentHostname;
    /* 代理实例IP [64,0] Not NULL */
    private String agentIpv4;
    /* 代理实例服务端口 [10,0] Not NULL */
    private Integer agentPort;
    /* 在线状态 [1,0] Not NULL */
    private String onlineStatus;
    /* 强制下线 [1,0] Not NULL */
    private String forceOffline;
    /* 执行器描述 [255,0] */
    private String agentDesc;
    /* 业务系统编号 [16,0] */
    private String bizCode;
    /* 版本号 [10,0] Not NULL */
    private Integer version;
    /* 创建时间 [19,0] Not NULL */
    private Date createTime;
    /* 更新时间戳 [19,0] Not NULL */
    private Timestamp updateTime;

    public AgentRegistryPo() {
        super();
    }

    /** 浅克隆 */
    @Override
    public AgentRegistryPo clone() {
        AgentRegistryPo cloneAgentRegistryPo = null;
        try {
            cloneAgentRegistryPo = (AgentRegistryPo) super.clone();
        } catch (CloneNotSupportedException e) {
            throw new RuntimeException(e);
        }
        return cloneAgentRegistryPo;
    }

    /**
     * AgentRegistryColumns.
     * 
     * @author Wang Peng(Auto Generator)
     * @date 2023-03-19
     * @version V5.0
     */
    public enum AgentRegistryColumns {
        /** 主键**/
        ID,
        /** 代理实例主机名**/
        AGENT_HOSTNAME,
        /** 代理实例IP**/
        AGENT_IPV4,
        /** 代理实例服务端口**/
        AGENT_PORT,
        /** 在线状态**/
        ONLINE_STATUS,
        /** 强制下线**/
        FORCE_OFFLINE,
        /** 执行器描述**/
        AGENT_DESC,
        /** 业务系统编号**/
        BIZ_CODE,
        /** 版本号**/
        VERSION,
        /** 创建时间**/
        CREATE_TIME,
        /** 更新时间戳**/
        UPDATE_TIME;
    }
}